<!DOCTYPE html>
<html lang="en">
<!--使用namespace让电脑知道我们使用的是thymeleaf模板-->
<head  xmlns:th="http://www.thymeleaf.org">
    <meta charset="UTF-8">
    <title>Title</title>
<!--    直接托左边的bootstrap.min.css和bootstrap.min.js文件进来，注意不要改动路径-->
    <link rel="stylesheet" href="/css/bootstrap.min.css">
    <!--  JQuery放在Head标签结束之前，所有CSS结束之后的位置  -->
    <script src="/js/jquery-3.6.0.min.js"></script>

<!--是不是css没导入啊要不要把那几个点删了-->

</head>
<body>
<!--加入一个流式布局的容器-->
<div class="container-fluid">

    <!-- 记得给输入一个id这样才能找到输入的内容，用action来找到对应的url -->
    <form action="/webapi/student/findByName">
        <input type="text" id="name" name="name"placeholder="请输入要查询的学生的姓名:">
        <input type="button" value="查询"  onclick="search();">
        <button type="button"  data-toggle="modal" data-target="#myModal"onclick="preAdd();">新增学生</button>
<!--        <input type="submit" value="提交">-->
    </form>



    <table class="table table-bordered">
        <thead>

        <tr>
            <th>学号</th>
            <th>姓名</th>
            <th>性别</th>
            <th>成绩</th>
            <th style="width: 100px">操作</th>
        </tr>
        </thead>
        <tbody id="studentTb">

        </tbody>
    </table>


</div>

<div class="modal fade" tabindex="-1" role="dialog"id="myModal">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                <h4 class="modal-title">学生信息</h4>
            </div>
            <div class="modal-body">

                <form id="formStudent">
                    <input hidden="hidden" id="id"name="id"/>
                    <div class="form-group">
                        <label for="sname">姓名</label>
                        <input type="text" class="form-control" id="sname" name="sname"placeholder="姓名">
                    </div>
                    <div class="form-group">
                        <label for="psw">Password</label>
                        <input type="password" class="form-control" id="psw" name="psw"placeholder="密码">
                    </div>
                    <div class="form-group">
                        <label for="sex">性别:</label>
                        <select class="form-control"id="sex"name="sex">
                            <option value="男">男</option>
                            <option value="女">女</option>

                        </select>
                    </div>
                    <div class="form-group">
                        <label for="score">成绩</label>
                        <input type="text" class="form-control" id="score" name="score"placeholder="成绩">
                    </div>
                </form>

<!--                表单结束-->

            </div>
            <div class="modal-footer">

                <button type="button" class="btn btn-primary" onclick="saveStudent();">保存</button>
            </div>
        </div><!-- /.modal-content -->
    </div><!-- /.modal-dialog -->
</div><!-- /.modal -->


<script src="/js/bootstrap.min.js"></script>

<script type="text/javascript">

    function preAdd(){
        $("#id").val(0);//提示新增
    }

    /**
     * 获取的结果放在rs里面，rs是一个数据集
     */

    //新增或者更新都可以
    function saveStudent(){

        //收集表单参数,serialize序列化一个数字

        var data=$("#formStudent").serialize();

        var id=$("#id").val();
        if(id<1){
            //是新增
            $.ajax({
                url: "/webapi/student/insert",
                method:"post",//是一个post请求
                data:data
            }).done(function (){
                //重新刷新table
                loadTable()
                //关闭对话框
                $('#myModal').modal('hide')
            })
        }else{
            //是更新
            $.ajax({
                url: "/webapi/student/update",
                method:"put",//是一个put请求
                data:data
            }).done(function (){
                //重新刷新table
                loadTable()
                //关闭对话框
                $('#myModal').modal('hide')
            })
        }

    }

    function search(){
        $.ajax({
            url:'/webapi/student/findByName',
            data:{
                name: $("#name").val(),
            },//data表示操作的数据，即用户输入的姓名
            method:"get"
        //rs：表示返回值，用done来执行用户操作完后的显示
        }).done(function (rs){

            var len = rs.length;
            var html = ""; //这个html的内容会改变，所以自动推荐var

            for(let i=0; i<len; i++){
                var item=rs[i];
                html+="<tr>"
                    +"<td>"+item.id+"</td>"
                    +"<td>"+item.sname+"</td>"
                    +"<td>"+item.sex+"</td>"
                    +"<td>"+item.score+"</td>"
                    +"<td>"
                    +" <a href='#' onclick='editStudent("+item.id+");'>编辑   " +
                    "<a href='#' onclick='deleteStudent("+item.id+");'>删除</a> </a></td>"
                    +"</tr>"
            }
            $("#studentTb").html(html);
        })
    }



    function editStudent(id){
        $('#myModal').modal('show');
        $.ajax({

            url:'/webapi/student/get/'+id
        }).done(function (rs){

            $("#id").val(rs.id);
            $("#sname").val(rs.sname);
            $("#psw").val("");
            $("#score").val(rs.score);
            $("#sex").val(rs.sex);

        })


    }

    function deleteStudent(id){

        if(confirm("你是否真的要删除吗？别后悔哦！")){

            $.ajax({
                url:"/webapi/student/delete/"+id,
                method:'delete'

            }).done(function (){

                loadTable();//一旦删除完毕需要更新表格，使用loadTable
            });

        }//end if

    }

    function loadTable()
    {

        $.ajax({
            url:'/webapi/student/list'
        }).done(function(rs)
        {

            var len=rs.length;
            var html="";
            for(var i=0;i<len;i++)
            {
                var item=rs[i];
                html+="<tr>"
                    + "<td>"+item.id+"</td>"
                    + "<td>"+item.sname+"</td>"
                    + "<td>"+item.sex+"</td>"
                    + "<td>"+item.score+"</td>"

                    + "<td> <a href='#' onclick='editStudent("+item.id+");'>编辑</a> <a href='#' onclick='deleteStudent("+
                    item.id+")'>删除</a></td>"

                    + "</tr>";
            }


            $("#studentTb").html(html);
        })
    }
    $(function()
    {
        loadTable();

    });
</script>
</body>
</html>